package javawdw.io.simple;

import java.io.InputStream;

import javawdw.io.BinaryReader;
import javawdw.io.TextReader;

/**
 * 文件读取器工厂类
 * 
 * @author David
 * 
 */
public final class ReaderFactory {
	/**
	 * 获取文本类输入流TextReader对象, 支持绝对路径和类路径参数
	 * 
	 * @param inputStream
	 *            输入流
	 * @param charsetName
	 *            字符集字符串表示形式
	 * @return 返回TextReader对象
	 */
	public static TextReader openTextReader(InputStream inputStream,
			String charsetName) {
		return new BufferedTextReader(inputStream, charsetName);
	}

	/**
	 * 获取文本类输入流TextReader对象, 支持绝对路径和类路径参数
	 * 
	 * @param inputStream
	 *            输入流
	 * @return 返回TextReader对象
	 */
	public static TextReader openTextReader(InputStream inputStream) {
		return new BufferedTextReader(inputStream);
	}

	/**
	 * 根据给定输入流获得二进制读入器
	 * 
	 * @param inputStream
	 *            输入流
	 * @return 返回读入器
	 */
	public static BinaryReader openBinaryReader(InputStream inputStream) {
		return new BufferedBinaryReader(inputStream);
	}
}
